package com.tanglon.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tanglon.domain.ResponseResult;
import com.tanglon.domain.dto.AddRoleDTO;
import com.tanglon.domain.dto.RoleStatusDTO;
import com.tanglon.domain.dto.UpdateRoleDTO;
import com.tanglon.domain.entity.Role;

import java.util.List;


/**
 * 角色信息表(Role)表服务接口
 *
 * @author makejava
 * @since 2025-08-13 11:23:26
 */
public interface RoleService extends IService<Role> {

    List<String> selectRoleKeyByUserId(Long id);

    ResponseResult roleList(Integer pageNum, Integer pageSize, String roleName, String status);

    ResponseResult changeStatus(RoleStatusDTO roleStatusDTO);

    ResponseResult addRole(AddRoleDTO addRoleDTO);

    ResponseResult roleDetail(Integer id);

    ResponseResult updateRole(UpdateRoleDTO updateRoleDTO);

    ResponseResult deleteRole(Integer id);

    ResponseResult roleListAll();
}
